#ifndef MMU_H
#define MMU_H

#define SWAPPER_PGTABLE_LEVELS 3

#define PAGE_SHIFT           12
#define PAGE_SIZE            (1 << PAGE_SHIFT)
#define PMD_TYPE_TABLE       (3 << 0)

#define PTE_SHIFT        12
#define PTE_SIZE         (1UL << PMD_SHIFT)
#define PTE_MASK         (~(PTE_SIZE - 1))
#define PTRS_PER_PTE     (1 << 9)

#define PMD_SHIFT        21
#define PMD_SIZE         (1UL << PMD_SHIFT)
#define PMD_MASK         (~(PMD_SIZE - 1))
#define PTRS_PER_PMD     (1 << 9)

#define PGDIR_SHIFT	     30
#define PGDIR_SIZE       (1UL << PGDIR_SHIFT)
#define PGDIR_MASK       (~(PGDIR_SIZE - 1))
#define PTRS_PER_PGD     (1 << 9)

#endif /* MMU_H */